#include "GateHandle.h"
#include "Gate\GateManager.h"
#include "Packet\Packet.h"
#include "Session\Session.h"
#include "Msg\GTLMsg.h"

void GTL_RegisterGateInfo( Session* pSession, Packet& packet )
{
	if( !pSession )
		return ;

	RegisterGateInfo gateInfo;
	packet.Read( ( char* )&gateInfo, sizeof( RegisterGateInfo ) );

	G_GateManager->AddGateInfo( gateInfo.sGateIP, gateInfo.nGatePort, gateInfo.nGateID, pSession->GetSessionID(), gateInfo.nToken );
}

void GTL_AddUserInGate( Session* pSession, Packet& packet )
{
	int nGateID = 0;
	packet >> ( int )nGateID;

	G_GateManager->AddGateUser( nGateID );
}

void GTL_DecUserInGate( Session* pSession, Packet& packet )
{
	int nGateID = 0;
	packet >> ( int )nGateID;

	G_GateManager->DecGateUser( nGateID );
}
